Skip to content

Address AI-induced inefficiencies#1

Open
Codym48 wants to merge 8 commits into
mainfrom
address-ai-induced-behaviors
Open

Address AI-induced inefficiencies#1
Codym48 wants to merge 8 commits into
mainfrom
address-ai-induced-behaviors

Conversation

@Codym48

@Codym48 Codym48 commented Jul 21, 2026

Copy link
Copy Markdown
Owner

Adoption of AI coding harnesses like Claude Code risks eroding the team's efficiency through some nascent behaviors that are adjacent to and not quite addressed by this guide. Try to cover some observed misbehaviors with clear bullets, stopping well short of directly addressing proper and improper use of AI.

Codym48 added 8 commits July 21, 2026 10:35
From https://lethain.com/make-no-assumptions/
> The author must be the first human in the loop for their output. The biggest cultural failure with harnesses is when you can tell that you–the recipient of a piece of work–are the first human in the loop reviewing it. You must set a cultural norm that the creator of a piece of content is always the first human in the loop before asking another human to review it. If you fail to set that cultural expectation, then you will quickly crush the remaining team with a high standard for quality reasoning, which will lead to a full destruction of your reasoning horizon.

I switched from "reviewing" to "reading" since this could apply to all forms of written communication, like performance reviews.

I added "and synthesized" to indicate that it's insufficient to simply review (look at) and validate (verify correctness, quality, appropriateness), the developer must go further and integrate the generated content into the larger context and their theories
"don't build" has always felt a bit prescriptive and constraining. I've found myself both (1) _not_ writing a script for fear of having to maintain it later, even though I probably should've written the throw-away tool instead of doing the thing manually, and (2) chafing at it and deciding "heck with it, I'm going to build the fragile thing anyway."

The massive adoption of AI and Claude Code shifts the landscape, making it much cheaper to build throw-away scripts for specific uses. We shouldn't discourage this, for many reasons, but should avoid _promoting_ unmaintainable things to the trunk or main branch.
@Codym48 Codym48 self-assigned this Jul 21, 2026
Comment thread README.md
Comment on lines -46 to +48
- Don't build or rely on anything that you aren't willing and able to maintain
- Don't promote or rely on anything that you aren't willing and able to maintain

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might be worth defining build vs promote here in a different line?

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree, but I'd like to find a way to do it very succintly.

  • "build" = create, which is incresingly worth doing, even with no intention to maintain it, if the use case is narrow and lifespan is tiny, since it's cheaper to do that via AI than ever before
  • "promote" = increase the use (and therefore blast radius), as newly defined at the top of the page: promote to the main branch of a heavily used repository, share widely among multiple teams or users that may implicitly expect you to maintain it, etc.

I could just say "promote to the trunk" as an approximation, but worry that's too narrow?

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think "promote to the trunk" would be too narrow, but I like your definitions.

Maybe could be done in an active fashion? I don't know how you feel about the "but" in the second line essentially appending to the first vs being a totally separate line. If separate, I think it needs slightly more context to properly differentiate it from build/create

  • Make it easy to build and create software, even if the use case is narrow and the lifespan is tiny.
  • But do not promote or rely on anything you aren't willing and able to maintain
    • Existing bullets on maintaining software

Comment thread README.md
- Commit and push frequently
- Clear and comprehensive MR descriptions are far more important than individual commit messages
- Updating the MR description costs nothing, work on continuously improving it
- Focus on [why (and why not), not how](https://cbea.ms/git-commit/#why-not-how), providing context and [theory](https://pablo.rauzy.name/dev/naur1985programming.pdf) that isn't already visible in the diff

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I find myself wanting this to be stronger. I still like the idea of writing for a reviewer/future person looking at such that they can build their own mental model without looking at the code

For posterity, here was the original line I sent you (admittedly, tone doesn't match most of what is in this document):

MR descriptions should accurately capture your understanding of the problem space and the solution taken in enough detail such that a reviewer can build their own mental model of the changeset before ever looking at the code

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, I was relying on the definitions embedded in those links that many people probably won't click. Could make the ask explicit first, and include the links as additional reading?

Suggested change
- Focus on [why (and why not), not how](https://cbea.ms/git-commit/#why-not-how), providing context and [theory](https://pablo.rauzy.name/dev/naur1985programming.pdf) that isn't already visible in the diff
- Present your understanding of the problem space and your solution's position within it, so the reviewer can build a mental model before looking at code
- Focus on [why (and why not), not how](https://cbea.ms/git-commit/#why-not-how), providing context and [theory](https://pablo.rauzy.name/dev/naur1985programming.pdf) that isn't already visible in the diff

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants